package exceptions

import (
	"github.com/gofiber/fiber/v2"
)

type Result struct {
	Msg  string      `json:"msg"`
	Code int         `json:"code"`
	Data interface{} `json:"data"`
}

// Success  返回成功
func Success(ctx *fiber.Ctx, msg string) error {
	return Response(ctx, nil, msg, 2000)
}

// Error  返回错误
func Error(ctx *fiber.Ctx, msg string) error {
	return Response(ctx, nil, msg, 4000)
}

// Response  自定义返回
func Response(ctx *fiber.Ctx, data interface{}, msg string, code int) error {
	return ctx.JSON(
		&Result{
			Msg:  msg,
			Code: code,
			Data: data,
		},
	)
}
